import 'package:enjoy_plus_three/pages/house/components/house_item.dart';
import 'package:enjoy_plus_three/utils/http.dart';
import 'package:enjoy_plus_three/utils/toast.dart';
import 'package:flutter/material.dart';

class HouseList extends StatefulWidget {
  const HouseList({super.key});

  @override
  State<HouseList> createState() => _HouseListState();
}

class _HouseListState extends State<HouseList> {
  List houseList = [];
  bool isLoad = true;

  // 发送网络请求
  void getHouseList() async {
    try {
      // 请求数据
      var res = await http.get('/house');
      print(res);
      if (res['code'] != 10000) return ToastUtil.showError('获取数据失败');
      ToastUtil.showSuccess('获取数据成功');
      setState(() {
        houseList = res['data'];
        isLoad = false;
      });
    } catch (e) {
      debugPrint('请求失败：$e');
      ToastUtil.showError('获取数据失败');
    }
  }

  @override
  void initState() {
    super.initState();
    getHouseList();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: const Color.fromARGB(255, 241, 238, 238),
      appBar: AppBar(
        title: const Text('我的房屋'),
        backgroundColor: Colors.transparent,
        centerTitle: true,
      ),
      body:
          isLoad
              ? Center(child: CircularProgressIndicator())
              : Stack(
                children: [
                  Padding(
                    padding: const EdgeInsets.only(
                      bottom: 80,
                      left: 10,
                      right: 10,
                    ),
                    child: ListView.separated(
                      itemBuilder: (BuildContext context, int index) {
                        return HouseItem(houseItem: houseList[index]);
                      },
                      separatorBuilder: (BuildContext context, int index) {
                        return Container(
                          height: 10,
                          color: const Color.fromARGB(255, 241, 238, 238),
                        );
                      },
                      itemCount: houseList.length,
                    ),
                  ),
                  Positioned(
                    bottom: 0,
                    left: 0,
                    right: 0,
                    child: Container(
                      padding: const EdgeInsets.all(10),
                      color: Colors.transparent,
                      child: Row(
                        children: [
                          Expanded(
                            child: ElevatedButton(
                              onPressed: () {
                                // 点击跳转
                                Navigator.pushNamed(context, '/location_list');
                              },
                              child: const Column(
                                children: [
                                  SizedBox(height: 5),
                                  Icon(Icons.add),
                                  Text('添加房屋'),
                                  SizedBox(height: 5),
                                ],
                              ),
                            ),
                          ),
                        ],
                      ),
                    ),
                  ),
                ],
              ),
    );
  }
}
